package com.lwm.service;

import com.lwm.domain.ResponseResult;
import com.lwm.domain.SalesOrder;
import com.lwm.dto.SalesOrderDto;

import java.util.List;

public interface SalesOrderService {
    /**
     * 更具id获取
     *
     * @param id 编码
     * @return {@link SalesOrder}
     */
    SalesOrder getById(Long id);


    /**
     * 收到分页
     *
     * @param salesOrderDto 销售订单dto
     * @return {@link ResponseResult}<{@link Object}>
     */
    ResponseResult<Object> getPage(SalesOrderDto salesOrderDto);

    /**
     * 获取全部
     *
     * @return {@link ResponseResult}<{@link Object}>
     */
    ResponseResult<Object> getAll();

    /**
     * 插入
     *
     * @param salesOrder 销售订单
     * @return {@link ResponseResult}<{@link Object}>
     */
    ResponseResult<Object> insert(SalesOrder salesOrder);

    /**
     * 更新通过编码
     *
     * @param salesOrder 销售订单
     * @return {@link ResponseResult}<{@link Object}>
     */
    ResponseResult<Object> updateById(SalesOrder salesOrder);

    /**
     * 删除通过编码
     *
     * @param id 编码
     * @return {@link ResponseResult}<{@link Object}>
     */
    ResponseResult<Object> removeBatch(List<Long> id);

}
